//
// Created by Administrator on 2020/10/20.
//

#ifndef O5G_SRC_O5GRAN_LCORE_INCLUDE_L3L2MSG_H_
#define O5G_SRC_O5GRAN_LCORE_INCLUDE_L3L2MSG_H_

#include "commMsg.h"

enum
{
    RAN_L3_L2_MSG_CONFIG_REQ = RAN_L3_L2_MSG_BASE,
    RAN_L2_L3_MSG_CONFIG_RSP,
    RAN_L3_L2_MSG_START_REQ,
    RAN_L2_L3_MSG_START_RSP,
    RAN_L3_L2_MSG_MIB_TX_REQ,
    RAN_L3_L2_MSG_MIB_TX_RSP,
    RAN_L3_L2_MSG_BUTT
};

typedef struct RanL3L2MsgConfigReq
{
    S_RanCommMsgHdr commMsgHdr;
    uint32_t nbIdx;
    uint32_t cellIdx;
} S_RanL3L2MsgConfigReq;

typedef struct RanL2L3MsgConfigRsp
{
    S_RanCommMsgHdr commMsgHdr;
    uint32_t nbIdx;
    uint32_t cellIdx;
} S_RanL2L3MsgConfigRsp;

typedef struct RanL3L2MsgStartReq
{
    S_RanCommMsgHdr commMsgHdr;
    uint32_t nbIdx;
    uint32_t cellIdx;
} S_RanL3L2MsgStartReq;

typedef struct RanL2L3MsgStartRsp
{
    S_RanCommMsgHdr commMsgHdr;
    uint32_t nbIdx;
    uint32_t cellIdx;
} S_RanL2L3MsgStartRsp;

typedef struct RanL3L2MsgMibTxReq
{
    S_RanCommMsgHdr commMsgHdr;
    uint32_t nbIdx;
    uint32_t cellIdx;
    uint8_t mib[32];
    uint32_t mibSize;
} S_RanL3L2MsgMibTxReq;

typedef struct RanL2L3MsgMibTxRsp
{
    S_RanCommMsgHdr commMsgHdr;
    uint32_t nbIdx;
    uint32_t cellIdx;
} S_RanL2L3MsgMibTxRsp;

#endif //O5G_SRC_O5GRAN_LCORE_INCLUDE_L3L2MSG_H_
